package com.bobi.tfca.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bobi.tfca.model.entity.ActivityEntity;
import com.bobi.tfca.model.entity.MemberEntity;
import com.bobi.tfca.model.vo.ActivityVO;
import com.bobi.tfca.model.vo.MemberVO;

import java.util.List;

/**
 * 活动服务层
 * @author 李文发
 * @date 2024/4/3
 */
public interface ActivityService extends IService<ActivityEntity> {
    List<ActivityVO> findAll(MemberEntity member);

    List<MemberVO> findAllMembers(Integer activityId);

    ActivityVO getActivityDetails(MemberEntity member, Integer activityId);

    Integer organizeActivity(MemberEntity member, ActivityVO activityVO);

    Boolean removeMember(Integer activityId, List<Integer> memberIds);

    Boolean cancelSign(MemberEntity member, Integer activityId);

    Integer signUp(MemberEntity member, Integer activityId);

    Boolean finishActivity(Integer activityId);

    Boolean cancelActivity(Integer activityId);

    List<ActivityVO> findMyActivities(MemberEntity member);
}
